Method of estimating a distance in a network lpwa and method of estimating the associated position

ABSTRACT

The present invention relates to a method for estimating a distance between nodes of an LPWA network. A first node (a second node resp.) successively transmits a narrow band signal at a plurality of carrier frequencies (421). The second (the first resp.) node receives the transmitted signals and demodulates them into baseband (422). Complex values representative of a forward-backward function of the transmission channel between two nodes are obtained (423) from the baseband demodulated signals. These complex values are then provided to a previously supervisingly trained neural network (425), the neural network giving an estimation of the distance separating the first node and the second node. The present invention also relates to a method for estimating the position of a node in an LPWA network using said distance estimation method.

TECHNICAL FIELD

The present invention generally relates to the field of narrow band Low Power Wide Area (LPWA) networks such as the LoRa, SigFox and NB-IoT networks. It also relates to the field of machine learning and more particularly to that of deep learning.

STATE OF PRIOR ART

The geolocation of connected objects has become an important issue in the field of IoT (Internet of Things). Especially, it enables information transmitted by these objects to be enriched by location information, the network to be more efficiently managed and geographic tracking applications to be developed when the objects are mobile.

A first geolocation possibility consists in equipping connected objects with GNSS (Global Navigation Satellite System) reception modules. However, this option is expensive and is generally not compatible with very strict energy consumption requirements of these objects. Further, it is excluded when the connected objects are deployed in an indoor environment.

A second geolocation possibility is to perform trilateration from radio signals transmitted by the connected objects and received by different base stations. However, signals transmitted in the LPWA networks, irrespective of whether they use a licensed (NB-IoT) or unlicensed (SigFox, LoRa) band are with a low rate and narrow band to propagate over long distances (up to several kilometres). The radio signals transmitted being with a narrow band results in a significant inherent limitation in the resolution of times of arrival (ToA) of these signals and thus in a low distance resolution in the position of the connected objects. This low time resolution can especially result in large position errors when transmission channels are of the multi-path type, in so far as the different paths cannot be discriminated from each other.

In the radar field, it is known to measure a distance to a target by using a plurality of narrow band signals, so as not to resort to high frequency ADC (Analogue Digital Converters). More precisely, this technique (known as stepped frequency radar), consists in varying through successive hops the carrier frequency of the transmitted signal while keeping an instantaneous narrow band, the complex response being then measured for each carrier frequency. By coherently combining the measurements, more precisely by performing a reverse Fourier transform of the measurements thus obtained, a pulse response of the channel is obtained in the time domain. The time resolution is thus inversely proportional to the width of the virtual frequency band scanned and no longer proportional of the instantaneous bandwidth. A similar technique, called “coherent multi-channel ranging”, has been applied in LR WPAN (Low Rate Wireless Personal Area Network) networks to determine the position of ZigBee transponders, as described in the paper of M. Pichler et al. entitled “Multi-channel distance measurement with IEEE 802.15.4 (ZigBee) devices” published in IEEE Journal of Selected Topics in Signal Processing, Vol. 3, No. 5, October 2009, pp. 845-859. However, the aforesaid article resorts to strong restrictive hypotheses on the propagation scenario, namely a line of sight (LOS) situation and the absence of multi-path.

The coherent multi-channel distance determination cannot be applied as such to LPWA networks. Indeed, the scanned virtual frequency band is subjected to regulatory requirements in the ISM band (at most 7 MHz can be used in the 868 MHz band), which limits time resolution and does not allow satisfactory resolution of multi-paths as previously indicated.

Recent advances in the field of machine learning have opened up new horizons in the field of the distance determination within wireless networks. In particular, the paper by O. Bialer et al. entitled “A deep neural network approach for time-of-arrival estimation in multipath channels” published in Proc. of ICASSP Conference, April 2018, pages 2936-2940, suggested the use of an artificial neural network to determine the time of arrival of an OFDM signal from samples of the preamble signal. After learning, the neural network enables a correct estimation of the time of arrival to be obtained even in the presence of a high multi-path density. However, if this technique is satisfactory for OFDM signals, it cannot be applied to narrow band signals such as those transmitted in LPWA networks.

The paper by F. Wolf et al. entitled “Coherent multi-channel ranging for narrowband LPWAN: simulation and experimentation results” published in Proc. 2018 15th IEEE Workshop on positioning, navigation and communication, 25 Oct. 2018 mentions the possibility of using a neural network to estimate a distance between two nodes of an LPWA network from characteristics of the transfer function for a plurality of channels.

One object of the present invention is consequently to provide a method for estimating a distance or, equivalently a propagation time also called time of flight (ToF) between nodes of an LPWA network, which enables a better spatial (time resp.) resolution than that obtained in the state of the art to be obtained, in particular when transmission channels are of the multi-path type. A subsidiary object of the present invention is to provide a method for estimating a position of a node in an LPWA network using said distance estimation method.

DISCLOSURE OF THE INVENTION

The present invention is defined by a distance estimation method as set out in claim 1. Advantageous embodiments are given in the dependent claims 2-6.

The present invention also relates to a method for estimating a position of a node of interest in an LPWA network using said distance estimation method.

BRIEF DESCRIPTION OF THE DRAWINGS

Further characteristics and advantages of the invention will appear upon reading a preferential embodiment of the invention, described with reference to the appended figures in which:

FIG. 1 schematically represents a measurement of forward-backward flight phase between two nodes of an LPWA network;

FIG. 2 represents an example of scanning a virtual band over time by a pair of nodes of LPWA network;

FIG. 3 schematically represents a method for measuring a distance between nodes of an LPWA network useful for understanding the present invention;

FIG. 4 schematically represents a method for measuring a distance between nodes of an LPWA network useful for understanding the present invention;

FIG. 5 illustrates the performance of a distance estimation method according to the invention and a distance estimation method known from the state of the art;

FIG. 6 schematically represents a first method for estimating a position of a node of LPWA network using a distance estimation method according to the present invention;

FIG. 7 schematically represents a second method for estimating a position of a node of LPWA network using a distance estimation method according to the present invention.

DETAILED DISCLOSURE OF PARTICULAR EMBODIMENTS

In the following, an LPWA (Low Power Wide Area) network will be considered as set forth in the introductory part, for example a LoRa, SigFox or NB-IoT network. These networks have especially the characteristic of using narrow band (typically about one hundred Hz to about one hundred kHz) signals with a low rate to allow long-range (typically from one km to a few tens kms) communications.

The nodes of an LPWA network comprise, on the one hand, connected objects and, on the other hand, base stations. A connected object served by a base station exchanges with the same data packets on a transmission channel which is generally of the multi-path type.

In FIG. 1, two nodes 1, 2 of an LPWA network (for example a base station in 1 and a connected object in 2) are represented, each node being equipped with a radio transceiver. Both nodes communicate via a pulse response transmission channel h(t).

The signal transmitted by a node is generically noted as s_(TX)(t) and can be written as:

s _(TX)(t)=s ₀(t _(T)(t))e ^(j(2πf) ⁰ ^(t) ^(T) ^((t)+ϕ) ^(T) ⁾  (1)

s₀ is the baseband signal, t_(T)(1) is the time at the transmitter which generally differs from real time t because of a synchronisation fault of the local clock, ϕ_(T) is the phase at the origin of the transmission, f₀ is the carrier frequency.

The signal received by the receiver node after transmission on the channel is given by:

s _(RX)(t)=s _(TX)(t)*h(t)  (2)

where the symbol * represents the convolution operation.

The transmission channel is supposed to include P paths, that is:

$\begin{matrix} {{h(t)} = {\sum\limits_{p = 0}^{P - 1}{\alpha_{p}{\delta \left( {t - \tau_{p}} \right)}}}} & (3) \end{matrix}$

where α_(p), τ_(p), p=0, . . . , P−1 are the attenuation coefficients and delays of the different paths respectively. The line of sight (LOS) path corresponds to the delay τ₀ and the distance wanted between transmitter and receiver is given by d=cτ₀ where c is the propagation speed of light.

The transfer function of the transmission channel is given by:

$\begin{matrix} {{H(f)} = {\sum\limits_{p = 0}^{P - 1}{\alpha_{p}e^{{- j}\; 2\pi \; f\; \tau_{p}}}}} & (4) \end{matrix}$

The signal received by the receiver node after translation into baseband can be written as:

s _(BB)(t)=s _(RX)(t)e ^(−j(2πf) ⁰ ^(t) ^(R) ^((t)+ϕ) ^(R) ⁾  (5)

where t_(R) (t) is the time at the receiver which generally differs from real time t because of a synchronisation fault of the local clock, and n_(R) is a term of noise supposed to be an additive white Gaussian noise.

If expressions (1), (2) and (5) are combined with each other, the baseband received signal is finally given by:

s _(BB)(t)=[s ₀(t _(T)(t))e ^(j(2πf) ⁰ ^(t) ^(T) ^((t)+ϕ) ^(T) ⁾ *h(t)]e ^(−j(2πf) ⁰ ^(t) ^(R) ^((t)+ϕ) ^(R) ⁾ +n _(R)(t)  (6)

Each of the nodes 1 and 2 can transmit a signal s_(TX)(t) and receive the signal transmitted by the other node. In the following, the transmission/reception parameters relating to the node 1 will be assigned index 1 and those relating to node 2 will be assigned index 2. Further, without loss of generality, the time reference will be conventionally taken as the local time of node 1, in other words:

t _(T1)(t)=t _(R1)(t)=t  (7-1)

and

t _(T2)(t)=t _(R2)(t)=t+t ₀  (7-2)

where t₀ is the time offset between node 2 and node 1. It is also assumed that the nodes have no carrier frequency offset and sampling offset, or that these offsets have been estimated and compensated for. With these conventions, the signal transmitted by node 1 and received by node 2, is written, after baseband translation:

s _(BB) ^(T1→R2)(t)=[s ₀(t)e ^(j(2πf) ⁰ ^(t+ϕ) ^(T1) ⁾ *h(t)]e ^(−j(2πf) ⁰ ^((t+t) ⁰ ^()+ϕ) ^(R2) ⁾ +n _(R2)(t)  (8-1)

and, conversely, the signal transmitted by node 2 and received by node 1:

s _(BB) ^(T2→R1)(t)=[s ₀(t)e ^(j(2πf) ⁰ ^((t+t) ⁰ ^()+ϕ) ^(T2) ⁾ *h(t)]e ^(−j(2πf) ⁰ ^(t+ϕ) ^(R1) ⁾ +n _(R1)(t)  (8-2)

In frequency representation, expressions (8-1) and (8-2) respectively become, if noise terms are disregarded:

S _(BB) ^(T1→R2)(f)=S ₀(f)H(f+f ₀)e ^(−j2πf) ⁰ ^(t) ⁰ e ^(j(ϕ) ^(T1) ^(−ϕ) ^(R2) ⁾  (9-1)

and

S _(BB) ^(T2→R1)(f)=S ₀(f)H(f+f ₀)e ^(j2πf) ⁰ ^(t) ⁰ e ^(j(ϕ) ^(T2) ^(−ϕ) ^(R1) ⁾  (9-2)

The transfer function of the transmission channel, after baseband translation is consequently, for a transmission from node 1 to node 2, which is the direction conventionally taken as the forward direction:

H _(BB) ^(T1→R2)(f)=H(f+f ₀)e ^(−j2πf) ⁰ ^(t) ⁰ e ^(j(ϕ) ^(T1) ^(−ϕ) ^(R2) ⁾  (10-1)

and, reversely, for a transmission from node 2 to node 1, a direction conventionally taken as the backward direction:

H _(BB) ^(T2→R1)(f)=H(f+f ₀)e ^(j2πf) ⁰ ^(t) ⁰ e ^(j(ϕ) ^(T2) ^(−ϕ) ^(R1) ⁾  (10-2)

These transfer functions take the following values at the zero frequency (baseband DC component):

$\begin{matrix} {{H_{BB}^{{T\; 1}\rightarrow{R\; 2}}(0)} = {{{H\left( f_{0} \right)}e^{{- j}\; 2\pi \; f_{0}t_{0}}e^{j{({\varphi_{T\; 1} - \varphi_{R\; 2}})}}} = {e^{j{({\varphi_{T\; 1} - \varphi_{R\; 2}})}}{\sum\limits_{p = 0}^{P - 1}{\alpha_{p}e^{{- j}\; 2\pi \; {f_{0}{({\tau_{p} + t_{0}})}}}}}}}} & \left( {11\text{-}1} \right) \\ {{H_{BB}^{{T\; 2}\rightarrow{R\; 1}}(0)} = {{{H\left( f_{0} \right)}e^{j\; 2\pi \; f_{0}t_{0}}e^{j{({\varphi_{T\; 2} - \varphi_{R\; 1}})}}} = {e^{j{({\varphi_{T\; 2} - \varphi_{R\; 1}})}}{\sum\limits_{p = 0}^{P - 1}{\alpha_{p}e^{{- j}\; 2\pi \; {f_{0}{({\tau_{p} - t_{0}})}}}}}}}} & \left( {11\text{-}2} \right) \end{matrix}$

H_(BB) ^(T1→R2)(0) and H_(BB) ^(T2→R1)(0) represent the complex value taken by the transfer function at the carrier frequency f₀ of the transmission channel in the forward direction and in the backward direction respectively, in the absence of node synchronisations. They will be noted {tilde over (H)}^(A)(f₀) and {tilde over (H)}^(R)(f₀) respectively in the following.

When the nodes are not synchronised (t₀ is not zero), which is generally the case, a transmission in either direction only does not enable the distance separating both nodes to be estimated because it is not possible to dissociate τ₀ and t₀ in expressions (11-1) and (11-2).

However, it is possible to dispense with the absence of synchronisation between nodes by performing a forward-backward transmission on the channel, the product of the values of the transfer functions at the carrier frequency f₀ in the forward and backward directions giving:

{tilde over (H)} ^(AR)(f ₀)={tilde over (H)} ^(A)(f ₀)·{tilde over (H)} ^(R)(f ₀)=H ²(f ₀)e ^(j[(ϕ) ^(T1) ^(−ϕ) ^(R2) ^()+(ϕ) ^(T2) ^(−ϕ) ^(R1) ^()])  (12)

Transmission in the backward direction may not immediately succeed transmission in the forward direction. The only requirement here is that the time deviation between both forward and backward transmission time instants is lower than the coherence time of the channel.

Irrespective of whether the nodes are synchronised or not, the transfer function of the transmission channel, including baseband translation, is measured for a plurality M of carrier frequencies, preferably equally distributed on a virtual pass band with a width BW_(virt)=(M−1)Δf where Δf is the deviation between successive frequencies. The transmitter (or pair of transmitters in the case of a forward-backward transmission) performs transmissions at frequencies f₀ ^((m))=f_(ref)+mΔf, m=0, . . . , M−1 where f_(ref) is a predetermined reference frequency. The value taken by the forward or backward transfer function in the absence of synchronisation, that is the baseband DC component expressed by (11-1) or (11-2) when the carrier frequency takes the value f₀ ^((m))=f_(ref)+mΔf will be conventionally noted as {tilde over (H)}(m)={tilde over (H)}(f₀ ^((m))). Likewise, the value taken by the forward-backward transfer function expressed by (12) when the carrier frequency takes the value f₀ ^((m))=f_(ref)+mΔf will be conventionally noted as {tilde over (H)}^(AR)(m)={tilde over (H)}^(AR)(f_(m) ⁽⁰⁾).

FIG. 2 represents an example of scanning a virtual band over time by a pair of nodes of an LPWA network.

In this example, scanning the virtual band with a width BW_(virt) is performed by frequency hops with a value Δf. The instantaneous bandwidth is noted as BW_(sym) (typically from about one hundred Hz to about one hundred kHz as previously indicated). Transmission of each packet lasts for a time T_(p), a guard time T_(g) being generally observed between a forward transmission and a backward transmission on the same propagation channel and a time T_(s) being observed to switch from one frequency to next one. The total scanning duration is consequently T_(MC)=M(2T_(p)+T_(g)+T_(s)).

It will be noted that for the purpose of coherently combining the measurements at the different frequencies, the duration T_(MC) will be advantageously chosen at the coherence time of the channel.

Carrier frequency scanning is not necessarily monotonic (increasing or decreasing) but can obey any order. In any case, at the end of scanning, a plurality of complex values characteristic of the forward-backward transfer function of the transmission channel between both nodes are available at a plurality M of frequencies.

In a first example, the complex values can be given by:

{tilde over (H)} ^(A)(m) and {tilde over (H)} ^(R)(m), m=0, . . . ,M−1.

Originally, these complex values will be given by {tilde over (H)}^(AR)(m), m=0, . . . , M−1.

The resolution on the distance measurement is then:

Δr=c/2BW_(virt) =c/2MΔf  (13)

For M, a value equal to a power of 2 could be advantageously chosen so as to be able to obtain possibly the pulse response of the channel by IFFT.

Alternatively, the carrier frequency values will not be chosen as equally distributed but taking the values f₀ ^((k) ^(m) ⁾=f_(ref)+k_(m)Δf where k_(m), m=0, . . . , M−1 being any distinct integers.

Originally, the complex values characteristic of the forward-backward transfer function of the transmission channel at the different carrier frequencies are provided to an artificial neural network (NN). These complex values are provided to the NN network as pairs of real values, for example, according to a first alternative, as a real part and an imaginary part or, according to a second alternative, as a module and an argument.

Without loss of generality, it will be assumed in the following that the complex values are provided to the NN network according to the first alternative.

The values

({tilde over (H)}^(A)(m)) and

({tilde over (H)}^(A)(m)), m=0, . . . , M−1, on the one hand, and the values

({tilde over (H)}^(R)(m)) and

({acute over (H)}^(R)(m), m=0, . . . , M−1, on the other hand can be provided as inlet values to the input layer. The latter then includes 4M neurons.

However, advantageously, according to one embodiment of the present invention, the values

({tilde over (H)}^(AR)(m)) and

({tilde over (H)}^(AR)(m)), m=0, . . . , M−1 are provided as input values. The inlet layer thus only includes 2M neurons.

In any case, the input layer is followed by several hidden layers (deep neural network) and an output layer. The output layer provides an estimation of the distance separating both nodes (or equivalently the propagation time on the line of sight path between both nodes).

The neural network is supervisingly trained on a set of labelled input data, in other words on a training set {{

({tilde over (H)}_(i) ^(AR)(m)),

({tilde over (H)}_(i) ^(AR)(m))}_(m=0) ^(M−1),d_(i)}_(i=1) ^(N) according to the embodiment of the invention, where N is the size of the training set and {{{tilde over (H)}_(i) ^(AR)(m)}_(m=0) ^(M−1)}_(i=1) ^(N) represents a set of values of the forward-backward transfer function of a transmission channel between two nodes of an LPWA system.

The training set could consist of simulated channel instances or measured channel instances. Training could take place in batch form off-line, and be possibly completed by an on-line training to refresh the synaptic weights.

The neural network is parameterised by the set of synaptic weights weighting input connections of different neurons. This set of synaptic weights will be noted as θ and the prediction function performed by the neural network as f^(θ).

The set of synaptic weights is updated during the training (or learning) phase, by means of the stochastic gradient descent (SGD) algorithm or a mini-batch (data groups of the training set) gradient descent algorithm, so as to minimise the loss function:

$\begin{matrix} {{L(\theta)} = {\frac{1}{N}{\sum\limits_{i = 1}^{N}\left( {{f^{\theta}\left( \left\{ {{\overset{\sim}{H}}_{i}^{AR}(m)} \right\}_{m = 0}^{M - 1} \right)} - d_{i}} \right)^{2}}}} & (14) \end{matrix}$

Those skilled in the art will understand that other loss functions could be used without departing from the scope of the present invention.

The neurons of the different layers, except for the last layer, use an activation function to propagate their outputs, for example rectifier linear unit (ReLU), a leaky ReLU function or even a Softplus function, in a known manner per se.

FIG. 3 schematically represents a distance measurement method between nodes of an LPWA network according to an example useful for understanding the present invention.

This method includes a training phase, 310 and an operational phase, 320.

During the training phase, the set θ of synaptic weights is updated in 315 from labelled data, by means of the stochastic gradient algorithm. The labelled data can come from simulation results and be stored in a first database 311 and/or come from georeferenced real measurements, stored in a second database 312.

By simulation results, it is meant here instances of a channel model.

Regarding the measurements, they could have been performed by connected objects equipped with GNSS receiver modules that are georeferenced using their respective GPS positions.

Alternatively, when these connected objects are mobile, detecting their passage in the proximity of a known position point (base station for example) can also allow measurement georeferencing.

Other case of measurement georeferencing could be contemplated without departing from the scope of the present invention. In particular, when a connected object follows a known or predictable trajectory, its known or predicted position could enable the corresponding measurements to be geo-referenced.

Each labelled datum comprises a complex vector with a size 2M, {{tilde over (H)}_(i) ^(A)(m),{tilde over (H)}_(i) ^(R)(m)}_(m=0) ^(M−1) (that is a real vector with a size 4M) representing the values of the transfer function in the forward direction and in the backward direction of a transmission channel between two nodes of the LPWA network, for the M different carrier frequencies. The labelled datum will also comprise the corresponding tag, representing the distance d_(i) between these nodes (or the line of sight propagation time on this channel, d_(i)/c).

During the operational phase, a first node of the network successively transmits a narrow band signal on a plurality M of carrier frequencies, in 321, during a plurality of first transmission intervals as previously set out. According to one advantageous alternative embodiment, the successive carrier frequencies are spaced by a constant frequency deviation Δf. The signal can be transmitted as successive packets of pilot symbols.

The second node of the LPWA network receives the signals at the different carrier frequencies and demodulates them to baseband, in 322. The values of the forward transfer function at the different frequencies, {tilde over (H)}^(A)(m), m=0, . . . , M−1, are obtained from the complex amplitude of the baseband DC components. For example, this complex amplitude could be obtained by averaging the DC components on an interval when it contains upon transmission a succession of identical pilot symbols. If the pilot symbols have been generated by multiplying a reference symbol with the successive elements of an orthogonal code, the baseband DC components will be multiplied with the elements of this code before averaging.

The same operation is performed by exchanging the roles of both nodes. More precisely, the second node successively transmits a narrow band signal on the different carrier frequencies in 321, the first node receives them and translates them into baseband in 322. As previously, the values of the backward transfer function, {tilde over (H)}^(R)(m), m=0, . . . , M−1 are obtained from the baseband DC components, that is from the complex symbols obtained by baseband demodulation.

The 2M real values {{tilde over (H)}^(A)(m),{tilde over (H)}^(R)(m)}_(m=0) ^(M−1) (4M real values) are provided to the input layer of the trained neural network in 325. The latter calculates an estimation, {circumflex over (d)}, of the distance between both nodes. Equivalently, it can provide an estimation, {circumflex over (τ)}₀, of the propagation time on the line of sight path.

FIG. 4 schematically represents a distance measurement method between nodes of an LPWA network according to an embodiment of the present invention.

The measurement method according to this embodiment includes a training phase, 410, and an operational phase, 420.

Advantageously, the neural network is trained on complex values of a forward-backward transfer function and not on pairs of complex values of a forward transfer function and a backward transfer function.

More precisely, each labelled datum will comprise a complex vector with a size M, {{tilde over (H)}_(i) ^(AR)(m)}_(m=0) ^(M−1) (real vector with a size 2M) representing the values of the forward-backward transfer function of a transmission channel between two nodes of the LPWA network, for the M different carrier frequencies.

During the training phase, the set θ of synaptic weights is updated in 415 from labelled data, by means of the stochastic gradient algorithm. As previously, the labelled data can come from simulation results and be stored in a first data base 411 and/or come from georeferenced real measurements, stored in a second data base 412.

The operational phase 420 comprises a step of transmitting narrow band signals by node 1 (resp. 2), 421, as well as a step of receiving and baseband demodulating, 422, these signals by node 2 (resp. 1), 422. Steps 421 and 422 are identical to steps 321 and 332 of FIG. 3, respectively.

Unlike FIG. 3, step 423 additionally comprises calculating the product of the forward and backward transfer functions at the different carrier frequencies, in other words the complex values {tilde over (H)}^(AR)(m)={tilde over (H)}^(A)(m)·{tilde over (H)}^(R)(m), m=0, . . . , M−1.

This calculation can be performed by one of the nodes, typically a base station, or even a remote server.

The M complex values {{tilde over (H)}^(AR)(m)}_(m=0) ^(M−1) (2M real values) are provided to the input layer of the trained neural network in 425. The latter calculates an estimation, {circumflex over (d)}, of the distance between both nodes. Equivalently, it can provide an estimation, {circumflex over (τ)}₀, of the propagation time on the line of sight path.

The embodiment is more compact than that of FIG. 3 with half as many neurons in the input layer. As compensation, it necessitates a prior calculation of the product of the forward transfer functions and backward transfer functions at the different carrier frequencies.

The distance estimation method according to the invention enables the distance (the line of sight propagation time resp.) between both nodes to be provided with a good spatial (time resp.) resolution. The neural network enables this information inherently present in measurements to be extracted, without having to build a complex parametric model.

It should be also noted that the network can continue to supervisingly learn on line, after the prior learning phase. For example, if a measurement of the forward-backward transfer function between both georeferenced nodes is performed, the corresponding labelled datum can be used to update parameters of the neural network.

FIG. 5 illustrates the performance of a distance estimation method according to the invention and a distance estimation method known from the state of the art. More precisely, FIG. 5 gives the distance error distribution function during a measurement run, by using a distance estimation method according to the state of the art (designated as IDFT) and an estimation method according to one embodiment of the present invention of FIG. 4 (designated as M-DNN for Mixed-data Deep Neural Network) in so far as training has been carried out both on synthetic and real data).

The IDFT method consisted in performing IDFT (inverse Discrete Fourier Transform) of the values of the forward transfer functions to obtain the pulse response of the transmission channel in the time domain, and then selecting the first path to determine the propagation time on the line of sight path and deducing the distance between nodes therefrom.

The M-DNN method according to the embodiment of the present invention used a neural network trained on a database generated by Monte-Carlo simulation on transmission channels having the characteristics given in Table 1 below.

TABLE 1 Parameter Symbol Value Path amplitude

−30 

  −5, −3, −1, ratio 0, 1, 3, 5, 10 dB Path delay Δτ = τ₁ − τ₀ 0:10:200 m difference Signal-to- E_(s)/N₀  −30:5:50 dB noise ratio Monte 1500 Carlo runs

indicates data missing or illegible when filed

The transmission channels are supposed to comprise a line of sight path (with an attenuation coefficient α₀ and a propagation time τ₀) as well as a non-line of sight path (with an attenuation coefficient α₁ and a propagation time τ₁). The signal to noise ratio upon reception has been noted as E_(s)/N₀. The number of simulations for each combination of the values of parameters of table I was 1500.

The number M of carrier frequencies was 16, with a frequency deviation Δf of 200 kHz corresponding to a virtual bandwidth (M−1)Δf of 3 MHz. The bandwidth of the signals transmitted to the different carrier frequencies was 10 kHz.

The neural network included 3 hidden layers, each comprising 128 neurons. The neurons of the different layers (except for the output layer) used the ReLU function as an activation function. The network learning has been made by means of a mini-batch gradient descent algorithm with 32 data samples, and the learning rate was α=10⁻³.

The figure shows that 90% of the estimation errors made by M-DNN the distance estimation method are lower than 45 m whereas 90% of the estimation errors made by the IDFT estimation method are only lower than 60 m.

FIG. 6 schematically represents a first method for estimating the position of a node of LPWA network using a distance estimation method according to the present invention.

The method for estimating the position of a node illustrated in FIG. 6 uses a distance estimation method according to the embodiment of the invention of FIG. 4.

The method for estimating the position of the node resorts to a number N (N≥3 in a plane) of anchor nodes, that is network nodes the position of which is known or has been previously determined.

The node the position of which is to be determined, 610, transmits a narrow band signal on the plurality M of carrier frequencies successively. The transmitted signal is received by the plurality of anchor nodes and baseband demodulated, to estimate values of the forward transfer function of the transmission channel with each anchor node, at the frequencies in question.

Conversely, the anchor nodes (only two anchor nodes 620 _(i) and 620 _(j) have been represented) each transmit a narrow band signal on said plurality M of carrier frequencies. The anchor nodes can transmit in turn or simultaneously with distinct orthogonal codes. The node the position of which is to be determined performs baseband demodulation of each of these signals and determines the values of the backward transfer functions of the channel at the different frequencies.

The values of the forward transfer functions are multiplied (in 630 _(i) and 630 _(j)) with the values of the corresponding backward transfer functions, at the same carrier frequencies, to obtain complex values representative of the forward-backward transfer functions, {tilde over (H)}_(i) ^(AR)(m), m=0, . . . , M−1, of all the transmission channels between the node, 610, and the anchor nodes within reach.

The complex value components representative of the forward-backward transfer functions are then transmitted as vectors (with a size 2M) to a previously trained neural network, 640, as described in connection with FIG. 4. The neural network then determines distances separating the node 610 from the different anchor nodes.

The vectors in question can be sequentially multiplexed at the input of the neural network and the estimated distances are then demultiplexed at the output of the network.

Alternatively, a neural network with a size 2N·M operating together on all the vectors and providing an estimation of the N distances in parallel could be provided.

Further alternatively, each of the anchor nodes (for example the base stations) can hoist a previously trained neural network. This anchor node then calculates complex values representative of the forward-backward transfer function between the node of interest 610 and itself.

Whatever the contemplated alternative, distances thus estimated by the neural network(s) are provided to a position prediction module, 650, estimating the position p of the node of interest by means of an MMSE (Minimum Mean-Square Error) algorithm. More precisely, the position of the node of interest is estimated by minimising the cost function:

$\begin{matrix} {{F(p)} = {\sum\limits_{i = 1}^{N}\left( {{{p - p_{i}}} - {\hat{d}}_{i}} \right)^{2}}} & (15) \end{matrix}$

In other words:

$\begin{matrix} {\hat{p} = {\underset{p}{\arg \mspace{11mu} \min}\left( {F(p)} \right)}} & (16) \end{matrix}$

Alternatively, position estimation can be integrated within the neural network itself as an output layer, the latter then using a linear activation function. To speed up training of the neural network, it could be splitted into two successive blocks (transfer learning), the first one being trained in a distance estimation as described in connection with FIGS. 3 and 4, the second one being trained in position estimation from the distances to the anchor nodes. In other words, the first block of layers is simply intended to distance estimation and the second block to estimate the position from the previously estimated distances.

FIG. 7 schematically represents a second method for estimating the position of a node of LPWA network using a distance estimation method according to the present invention.

The method for estimating the position of a node illustrated in FIG. 7 again uses a distance estimation method according to the embodiment of the invention of FIG. 4.

Elements designated by references 710, 720 _(i/j), 730 _(i/j), 740 are identical to elements 610, 620 _(i/j), 630 _(i/j), 640 respectively and their description will be therefore not repeated here.

If the transmission channel between the node of interest 710 and the anchor node 720 _(i) is considered, the values of the forward transfer functions are multiplied in 730 _(i) with the values of the corresponding backward transfer functions, at the same carrier frequencies, to give an M-tuple of complex values, or equivalently a real vector with a size 2M, representative of the forward-backward transfer function of the transmission channel between the node of interest and the anchor node 720 _(i).

The N vectors representative of the different transmission channels are provided, on the one hand, to a first artificial neural network 740, identical to the artificial neural network 640 and, on the other hand, to a second artificial neural network 745.

The first neural network provides estimation of distances between the point of interest and the anchor nodes. The same alternatives as those described in connection with FIG. 6 are here applicable.

The second neural network 745, performs classification of each channel of the M-tuple of complex values representing the forward-backward transfer function of this channel. More precisely, the second neural network is configured to provide quality factors {circumflex over (π)}_(i), i=1, . . . , N. The quality factor {circumflex over (π)}_(i) is defined as a score of belonging to LOS or NLOS category, in other words the probability that the transmission channel between nodes 710 and 720 _(i) belongs to either category. The neural network is previously trained on complex values representative of the forward-backward transfer functions, that is on M-tuples {{tilde over (H)}^(AR)(m)}_(m=0) ^(m=M−1) obtained by measurement and/or simulation, each M-tuple being labelled by the LOS/NLOS type of the transmission channel in question. By simulation, it is meant here the draw for parameters of a predetermined model of a transmission channel.

The quality factors {circumflex over (π)}_(i), i=1, . . . , N, are provided with the corresponding distance estimations, {circumflex over (d)}_(i), to the position estimation module 750. This estimation module attempts to minimise a cost function, weighting the estimated distance deviation with the corresponding estimation quality factor:

$\begin{matrix} {{F_{\pi}(p)} = {\sum\limits_{i = 1}^{N}{{\hat{\pi}}_{i}\left( {{{p - p_{i}}} - {\hat{d}}_{i}} \right)}^{2}}} & (17) \end{matrix}$

where p is a vector defining the position of the node 710 in a given reference frame and p_(i), i=1, . . . , N are vectors defining the respective (known) positions of the anchor nodes 720 _(i) in the same reference frame, and N is the number of anchor nodes considered.

The estimated position is then that minimising the cost function:

$\begin{matrix} {\hat{p} = {\underset{p}{\arg \mspace{11mu} \min}\left( {F_{\pi}(p)} \right)}} & (18) \end{matrix}$

Different alternatives could be contemplated by those skilled in the art without departing from the scope of the invention. In particular, instead of multiplexing the vectors representative of the forward-backward transfer functions at the input of the neural networks 740 and 745, neural networks 740 _(i) and 745 _(i) associated with each transmission channel could be provided.

The neural networks 740 and 745 (or 740 _(i) and 745 _(i)) could possibly be fused to be replaced with 2-output neural networks, a first output giving an estimation of the distance and a second output giving the quality factor.

In any case, the position estimation given by expressions (17) and (18) also generally allows a more accurate estimation than that given by expressions (15) and (16). 

1. A method for estimating a distance between a first node and a second node of an LPWA network, the first node, the second node respectively, successively transmitting narrow band signals on a plurality M of carrier frequencies (421) and the second node, first node respectively, demodulating the baseband received signals, characterised in that: a plurality of complex values representative of the forward-backward transfer function of the transmission channel between the first and second nodes, at the different carrier frequencies, are determined (423) from the signals received by the second node, first node respectively, after baseband demodulating, said complex values, {tilde over (H)}^(AR)(m), m=0, . . . , M−1, representative of the forward-backward transfer function of the transmission channel being obtained by working out the product of the complex values, {tilde over (H)}^(A)(m), m=0, . . . , M−1 of the forward transfer function of the transmission channel, at said carrier frequencies, with the respective complex values, {tilde over (H)}^(R)(m), m=0, . . . , M−1 of the backward transfer function of the transmission channel, at these same carrier frequencies; said complex values representative of the forward-backward transfer function are provided to a previously supervisingly trained artificial neural network, said neural network giving (425) an estimation of the distance separating the first node and the second node.
 2. The distance estimation method according to claim 1, characterised in that the carrier frequencies are chosen equally distributed on a virtual band with a width (M−1)Δf where Δf is the deviation between two consecutive carrier frequencies.
 3. The distance estimation method according to claim 1 or 2, characterised in that the neural network has an input layer with 2M neurons receiving, on the one hand, the M real parts (

({tilde over (H)}_(i) ^(AR)(m)), m=0, . . . , M−1) and, on the other hand, the M imaginary parts (

({tilde over (H)}_(i) ^(AR)(m)), m=0, . . . , M−1) of the complex values representative of the forward-backward transfer function.
 4. The distance estimation method according to claim 3, characterised in that it comprises a supervised training phase (410) in which the neural network is trained using a set of labelled data, each labelled datum comprising a complex vector representing the values of the forward-backward transfer function between two nodes of an LPWA network, for the M different carrier frequencies, and as a tag, the corresponding distance between these two nodes.
 5. The distance estimation method according to claim 4, characterised in that the labelled data are obtained from simulated propagation channels (411) and/or measured, real propagation channels, between georeferenced nodes (412).
 6. The distance method estimation according to one of the preceding claims, characterised in that successively transmitting and receiving the narrow band signals on the transmission channel on said plurality M of carrier frequencies, from the first node to the second node and from the second node to the first node, is performed over a total duration (T_(MC)) lower than the coherence time of the transmission channel.
 7. A method for estimating a position of a node of interest in an LPWA network comprising a plurality N of anchor nodes the positions of which are known, characterised in that the distance between the node of interest and each of the anchor nodes is estimated by means of the distance estimation method according to one of the preceding claims, the position of the node of interest being obtained by minimising (660) a cost function ${F(p)} = {\sum\limits_{i = 1}^{N}\left( {{{p - p_{i}}} - {\hat{d}}_{i}} \right)^{2}}$ where {circumflex over (d)}_(i), i=1, . . . , N are the estimated distances between the node of interest by the neural network (640) and the anchor nodes, p_(i), i=1, . . . , N, are vectors representing the respective positions of the anchor nodes and p is a vector representing the position of the node of interest.
 8. A method for estimating a position of a node of interest in an LPWA network comprising a plurality N of anchor nodes the positions of which are known, characterised in that the distance between the node of interest and each of the anchor nodes is estimated by means of the distance estimation method according to one of claims 1 to 6, the position of the node of interest being obtained by minimising (750) a cost function ${F_{\pi}(p)} = {\sum\limits_{i = 1}^{N}{{\hat{\pi}}_{i}\left( {{{p - p_{i}}} - {\hat{d}}_{i}} \right)}^{2}}$ where {circumflex over (d)}_(i), i=1, . . . , N are the estimated distances between the node of interest and anchor nodes by the neural network (740), p_(i), i=1, . . . , N are vectors representing the respective positions of the anchor nodes, p is a vector representing the position of the node of interest, {circumflex over (π)}_(i), i=1, . . . , N are quality factors indicative of the LOS/NLOS category of the transmission channels between the node of interest and anchor nodes, the quality factor relating to a transmission channel between the node of interest and an anchor node being provided by a second artificial neural network (745) receiving as an input, the real and imaginary parts of the complex values representative of the forward-backward transfer function. 